$main-color: #c7a673;

.vip-card {
    position: relative;
    margin: 24rpx 24rpx 0;
    box-shadow: 0 14r 36rpx -6rpx rgba(36, 36, 36, 0.3);
    padding: 20rpx 48rpx 0 40rpx;
    height: 302rpx;
    border-radius: 16rpx;
    overflow: hidden;
    background-color: black;

    &__content {
        position: relative;
        z-index: 99;

        &-title {
            display: flex;
            justify-content: space-between;
            align-items: center;

            .discount {
                //   display: flex;
                //   align-items: flex-end;
                color: $main-color;

                .num {
                    font-size: 48rpx;
                }

                .unit {
                    margin-left: 12rpx;
                    font-size: 28rpx;
                }
            }

            .grade {
                display: flex;
                align-items: center;

                .grade-name {
                    margin-left: 12rpx;
                    font-size: 28rpx;
                    color: $main-color;
                }
            }
        }

        &-desc {
            text-align: right;
            margin-top: 20rpx;
            font-size: 24rpx;
            color: $main-color;
        }
    }

    &__bg {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        z-index: 1;
    }
}

.grade-step {
    margin: 64rpx 24rpx 0;
    padding: 32rpx 40rpx;
    border-radius: 16rpx;
    overflow: hidden;
    background-color: $theme-panel-bg-color;

    &__title {
        color: $main-color;
        font-size: 32rpx;
        font-weight: 600;
    }

    &__list {
        margin-top: 54rpx;
        color: $theme-color-ghost-base;

        .step-item {
            display: flex;
            align-items: flex-start;
            margin-top: 28rpx;

            &.current {
                color: $main-color;
            }

            &__round {
                position: relative;
                display: inline-block;
                width: 28rpx;
                height: 28rpx;

                .content {
                    position: relative;
                    display: inline-block;
                    width: 28rpx;
                    height: 28rpx;
                    background-color: #ffffff;
                    border-radius: 100%;
                    border: 2rpx solid #6e6e6f;
                    z-index: 9;

                    &.current {
                        border: none;
                        background-color: $main-color;
                    }
                }

                .line {
                    content: "";
                    height: 72rpx;
                    bottom: 22rpx;
                    width: 2rpx;
                    position: absolute;
                    left: 14rpx;
                    background: #979797;
                    z-index: 8;
                }
            }

            &__content {
                flex: 1;
                margin-left: 40rpx;

                .title {
                    font-size: 24rpx;

                    .grade-name {
                        font-weight: 500;
                    }

                    .grade-condition {
                        margin-left: 28rpx;
                    }
                }

                .desc {
                    margin-top: 4rpx;
                    font-size: 20rpx;
                }
            }
        }
    }
}